package cn.auth.service;

import cn.auth.config.web.DataGridResultInfo;
import cn.auth.pojo.User;

public interface UserService {

    /**
     * 查找用户
     *
     * @param user
     * @return
     */
    User find(User user);

    /**
     * 查找用户是否存在
     *
     * @return
     * @throws Exception
     */
    boolean existsByUserName(String username);


    /**
     * 添加用户
     *
     * @return
     * @throws Exception
     */
    long add(User user);


    /**
     * 用户账号信息修改
     *
     * @param user
     * @return
     * @throws Exception
     */
    boolean modify(User user);


    /**
     * 移除用户
     *
     * @param userId
     * @return
     */
    boolean remove(long userId);


    /**
     * 根据id查询用户是否存在
     *
     * @param userId
     * @return
     */
    boolean existsById(long userId);


    /**
     * 查询所有用户
      * @param page
     * @param rows
     * @return
     */
    DataGridResultInfo<User> findUsers(int page, int rows);
}
